此系列文章會同步發文到個人部落格,有興趣的讀者可以前往觀看喔。
語法
cy.wait(time)
cy.wait(alias)
cy.wait(aliases)
cy.wait(time, options)
cy.wait(alias, options)
cy.wait(aliases, options)
為什麼要避免使用 cy.wait()
有時我們為了等資料更新、等上一個動作完成...,會在腳本上寫 cy.wait()
,讓程式等一些秒數後再繼續跑下一行程式。但有時猜測的秒數可能過長或過短,等到腳本數一多,就會浪費很多時間在等待。
可以等待特定的別名出現
cy.intercept('GET', '/users', [{ name: 'Maggy' }, { name: 'Joan' }]).as(
'getUsers'
)
cy.get('#fetch').click()
cy.wait('@getUsers') // <--- wait explicitly for this route to finish
cy.get('table tr').should('have.length', 2)